/*
 * 文件名：RunLog.java
 * 版权：Copyright by www.wootide.com
 * 描述：
 * 修改人：ozm
 * 修改时间：2013-1-28
 * 跟踪单号：
 * 修改单号：
 * 修改内容：
 */
package com.wootide.ets.log.syslog;

import javax.servlet.http.HttpServletRequest;

/**
 * 系统运行日志接口层
 * 〈一句话功能简述〉
 * 〈功能详细描述〉
 * @author ozm
 * @version 2013-1-28
 * @see RunLog
 * @since 2013-1-28上午9:49:07
 */
public interface RunLog
{
    /**
     *  
     * Description: Error级别日志 带异常信息
     * Implement: <br>
     * @param detail   详细描述
     * @param t        异常
     * @see
     * @return void
     * @author ozm
     */
    void error(Object detail, Throwable t);
    
    /**
     * 
     * Description: Error级别日志
     * Implement: <br>
     * @param detail 详细描述
     * @see
     * @return void
     * @author ozm
     */
    void error(Object detail);
    
    /**
    * 
    * Description: Error级别日志
    * Implement: <br>
    * @param obj obj
    * @param request  HttpServletRequest
    * @see
    * @return void
    * @author ozm
    */
    void error(Object obj, HttpServletRequest request);
    
    /**
     *
     * Description: 打印error运行日志
     * Implement: <br>
     * @param obj  obj
     * @param t     异常
     * @param request HttpServletRequest
     * @see
     * @return void
     * @author ozm
     */
    public void error(Object obj, Throwable t, HttpServletRequest request);
    
    /**
     * 
     * Description: debug级别日志 带异常信息
     * Implement: <br>
     * @param detail 详细描述
     * @param t  异常
     * @see
     * @return void
     * @author ozm
     */
    void debug(Object detail, Throwable t);
    
    /**
     * 
     * Description: debug级别日志
     * Implement: <br>
     * @param detail 详细描述
     * @see
     * @return void
     * @author ozm2013-1-28上午10:04:44
     */
    void debug(Object detail);
    
    /**
     * 
     * Description: info级别日志
     * Implement: <br>
     * @param detail 详细描述
     * @see
     * @return void
     * @author ozm2013-1-28上午10:06:30
     */
    void info(Object detail);
    
    /**
     * 
     * Description: info级别日志 带异常信息
     * Implement: <br>
     * @param detail 详细描述
     * @param t 异常
     * @see
     * @return void
     * @author ozm2013-1-28上午10:06:56
     */
    void info(Object detail, Throwable t);
    
    /**
     * 
     * Description: info级别日志 带异常信息
     * Implement: <br>
     * @param obj  obj
     * @param request  HttpServletRequest
     * @see
     * @return void
     * @author ozm2013-1-28上午10:08:21
     */
    void info(Object obj, HttpServletRequest request);
    
    /**
     * 
     * Description: fatal级别日志 带异常信息
     * Implement: <br>
     * @param detail 详细描述
     * @param t  异常
     * @see
     * @return void
     * @author ozm2013-1-28上午10:09:02
     */
    void fatal(Object detail, Throwable t);
    
    /**
     * 
     * Description: fatal级别日志
     * Implement: <br>
     * @param detail  详细描述
     * @see 
     * @return void
     * @author ozm2013-1-28上午10:09:31
     */
    void fatal(Object detail);
    
    /**
     * 
     * Description:warn级别日志 带异常信息
     * Implement: <br>
     * @param detail 详细描述
     * @param t 异常
     * @see
     * @return void
     * @author ozm2013-1-28上午10:09:55
     */
    void warn(Object detail, Throwable t);
    
    /**
     * 
     * Description: warn级别日志
     * Implement: <br>
     * @param detail  详细描述
     * @see
     * @return void
     * @author ozm2013-1-28上午10:10:18
     */
    void warn(Object detail);
    
    /**
     * 
     * Description: 判断是否是Info级别
     * Implement: <br>
     * @see
     * @return boolean 
     * @author ozm2013-1-28上午10:10:39
     */
    boolean isInfo();
    
    /**
     * 
     * Description: 判断是否是Debug级别
     * Implement: <br>
     * @see
     * @return boolean
     * @author ozm2013-1-28上午10:11:21
     */
    boolean isDebug();
    
    /**
     * 
     * Description: 判断是否是Error级别
     * Implement: <br>
     * @see
     * @return boolean
     * @author ozm2013-1-28上午10:11:40
     */
    boolean isError();
    
    /**
     * 
     * Description: 判断是否是Warn级别
     * Implement: <br>
     * @see
     * @return boolean
     * @author ozm2013-1-28上午10:12:04
     */
    boolean isWarn();
    
    /**
     * 
     * Description: 判断是否是Fatal级别
     * Implement: <br>
     * @see
     * @return boolean
     * @author ozm2013-1-28上午10:12:27
     */
    boolean isFatal();
    
}
